/****************************************************************************
 *  _____       ______  _____
 * |_   _|     |  ____|/ ____|
 *   | |  _ __ | |__  | (___    Institute of Embedded Systems
 *   | | | '_ \|  __|  \___ \   Zürcher Hochschule für Angewandte
 *  _| |_| | | | |____ ____) |  Wissenschaften
 * |_____|_| |_|______|_____/   8401 Winterthur, Switzerland
 *
 ****************************************************************************
 *
 * @version $Rev: 146 $
 * @author  $Author: bacr $
 * @date    $Date: 2013-10-02 17:56:25 +0200 (mer., 02 oct. 2013) $
 *
 ***************************************************************************/

#ifndef __PTP2_PACKET_ASSEMBLER_H__
#define __PTP2_PACKET_ASSEMBLER_H__

#include "packet/packet.h"

#include "hcpp/ptp2_port.h"
#include "hcpp/ptp2_slave.h"

void     ptp2_packet_assembler_signaling_common(ptp2_port_t *port, ptp2_slave_t *slave, packet_t *request, packet_t *response, uint16_t tlv_total_len);
uint16_t ptp2_packet_assembler_signaling_grant(ptp2_port_t *port, ptp2_slave_t *slave, packet_t *request, packet_t *response, uint8_t tlv_idx, int8_t log_period, uint32_t duration);
uint16_t ptp2_packet_assembler_signaling_ack_cancel(ptp2_port_t *port, ptp2_slave_t *slave, packet_t *request, packet_t *response, uint8_t tlv_idx);

#endif

